The present invention relates generally to data processing, and more particularly to information retrieval from a local or remote server in a data network or internetwork.
In 1989, researchers at CERN (the European Laboratory for Particle Physics) wanted to develop a better way to give widely dispersed research groups access to shared information. They wanted to develop a system that would enable them to access quickly all types of information via a common interface, removing the need to execute many steps to achieve the final goal. At that time, to read a document or view an image from a remote site often required finding the location of the desired item, making a remote connection to the machine where it resided, and then retrieving it for storage on a local machine. Over the course of a year, the proposal for this project was refined, and work began on the implementation.
During 1992, CERN began publicizing their project as a world-wide web (WWW). People saw what a great idea it was, and began creating their own WWW servers to make their information available to the Internet. Some people also began working on WWW clients, designing easy-to-use interfaces to the WWW. By far the most successful has been the Mosaic browser from the National Center for Supercomputing Applications (NCSA) and its kindred WWW browsers.
Mosaic and its kindred browsers use a computer interface method known as hypertext. Hypertext is text having embedded cross-references that can be followed to obtain related information. At a display terminal, a user can follow a cross-reference by "clicking" a mouse to point to a cross-referenced phrase, causing a related document or index to appear in a "browser window" on the display. The hypertext used by Mosaic and its kindred browsers is defined in a document using Hypertext Markup Language (HTML) created by the Internet Engineering Task Force and described in an Internet draft document by T. Berners-Lee and D. Connolly entitled "Hypertext Markup Language--2.0" (Jun. 16, 1995). Mosaic and its kindred browsers use an application-level protocol called the Hypertext Transfer Protocol (HTTP) when communicating with network file servers to follow hypertext cross-references. HTTP is described in an Internet draft document by T. Berners Lee, R. T. Fielding, and H. Frystyk Nielsen entitled "Hypertext Transfer Protocol--HTTP/1.0" (Mar. 8, 1995). Servers that recognize the HTTP are known as HTTP Daemon (HTTPD) servers.
There are two freely distributable UNIX-based WWW HTTPD server programs that are widely available and adopted by numerous WWW sites, one from NCSA the other from CERN. According to Netscape Communications Corp., there are now over 3 million WWW users accessing 10,000 Web servers. Currently, there are numerous free and commercial WWW browsers available: NCSA Mosaic, Cello, Viola, Emacs-W3, Lynx, Chimera, MacWeb, WinWeb, OmniWeb, Netscape Navigator from Netscape Communications, BookLink Internetworks, IBM Web Explorer, Netcom NetCruiser, Pipeline, Microsoft Network, Apple's Cyberdog technology, and packages from O'Reilly Associates, Spry, Spyglass, Quarterdeck, Infoseek, Ubique, Quadralay, and SunSoft's HotJava.
BookLink and Netscape Communications are the two most aggressive contenders offering a Web browser. They are start-up companies founded in March and April, 1994, respectively. Netscape released its first browser in October, 1994, and BookLink announced its highly functional browser in June, 1994.
Netscape recently announced its Netsite Communications Server and Commerce Server, as well as a new suite of applications for building a complete electronic commerce system on the Internet. Netscape products feature a built-in proprietary security mechanism that supports Netscape's Secure Sockets Layer (SSL) extension to the HTTP protocol. Based on SSL technology, they offer a secure commercial credit card billing and order processing system. The distinguishing features of the BookLink browser are: speed, multithreading (which allows simultaneous multiple data transfer sessions in an unlimited number of windows), multipaned windows that allow different documents in each window, progressive rendering of graphical elements (e.g., Graphics Interchange Format files--GIFs) so that users don't have to wait to see the completed page, and persistent caching of rendered pages so that there is no delay in redrawing of graphics elements.
The direction of commercial WWW technology development is clearly going toward communication security and faster, better browser displays. However, there has not been a similar degree of development in the area of Distributed Information Logistics Services (DILS). DILS are techniques for reducing human effort, communication costs, and latency in the access by users to information whose value may be time dependent and perishable. Some WWW users have complained about the lack of facilities supporting DILS. For example, the following are quotations from a "www-talk" newsgroup.
Christian Mogensen (mogens@CS.Stanford.EDU) Tue. Jan. 10, 1995 20:43:50+0100
&gt;Is there any way in HTTP for a Server to automatically
&gt;update a page without requiring the user of the client
&gt;to click on anything?
Currently, no. HTTP is connectionless, and that makes it hard to do things after a transaction is completed.
&gt;An example use of this would be if a Client requests a
&gt;stock price page and keeps the page displayed. Now
&gt;suppose the stock price changes. Is there a way
&gt;within HTTP for the Server to update the page
&gt;automatically without requiring the user to click on
&gt;the reload option?
Another way to do this is to provide a stock-ticker application that is initialized by the web client when it receives application/x-stock-ticker data. The browser forks off the special viewer which opens a separate communication channel to the server.
The previously noted use of Expires: xxx header is interesting--I don't think it will work in the described manner until after a few revisions of browser software have passed . . .
jjjones--SIO Technologies Corp. (jjones@helpmt.sio.com) Tue, Jan. 10, 1995 21:44:39+0100
Question:
I know of no client that will automatically refetch a document (if it is the current one on the screen) if the current time surpasses the Expire time specified for the document. Correct?
Marc Salomon (marc@library.ucsf.edu) Tue, Jan. 10, 1995 23:07:50+0100
The problem is that the data changes on the server side and there is no way in the current HTTP model for the server to contact a client to inform them of this. A solution that would be within the http model would be for the server to inform the client that the content of this document changes rapidly and a interval for refreshed. Something like:
C: GET/stock.sub.-- quote.html HTTP/1.1 S: HTTP/1.1 200 OK Content-type: text/html .fwdarw.Refresh: &lt;time.sub.-- interval&gt; Last-modified: Wednesday, Dec. 7, 1994 22:03:38 GMT Expires: Wednesday, Dec. 7, 1994 22:03:39 GMT Content-length: 1721
This would allow the client to set a timer and perform a GET on the URL every time.sub.-- interval so you would have the perception of a dynamically updated document. The updates would be dependent on the alarm clock, of course, instead of any real change in the content of the document, but I think its the closest you are going to get under the current scheme.
marc
Mark J Cox (M. J. Cox@bradford.ac.uk) Tue. Jan. 10, 1995 15:22:05+0100
The HTTP documentation mentions the Expires: header which "Gives the date after which the information ceases to be valid and should be retrieved again" to "allow for the periodic refreshing of displays of volitile [sic.] data".
Some clients are now starting to support the Expires header, but I know of none that will automatically refresh without user intervention. If they do then there is a need for a second header: one that tells the client that the document will expire at some given time--but don't bother getting it again.